package snafu.implementation.actions.create;

import java.util.List;

import snafu.framework.actions.IntentionItself;
import snafu.framework.actions.IntentionView;
import snafu.framework.agents.AgentState;
import snafu.framework.objects.WorldObject;
import snafu.framework.view.Access;
import snafu.framework.worlds.WorldMap;

public class CreateIntentionItself extends IntentionItself<CreateAction> implements CreateIntention {
	public CreateIntentionItself(Access privacy) {
		super(privacy);
	}

	@Override
	public CreateAction createAction(List<WorldObject> targets) {
		return new CreateAction(targets, this);
	}

	@Override
	public IntentionView<CreateAction> createView(Access access) {
		return new CreateIntentionView(Access.PRIVATE, this);
	}

	@Override
	protected boolean checkApplicability(WorldMap perception, AgentState agent,
			List<WorldObject> targets) {
		return true;
	}

	
}
